/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package proms.net.modelo.dao;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;
import proms.net.conexao.Conexao;


import proms.net.modelo.bean.Processo;

public class ProcessoDAO implements InterfaceProcessoDAO {
	  private Conexao conexao;

	

	
	public void excluir(Integer n_processo) {
		// TODO implementar excluir

	}

	
	public void salvar(Processo processo) throws SQLException {

		Connection con = conexao.conecta();
		PreparedStatement ps;

		String sqlInsert = "INSERT INTO processo (n_processo,cod_cliente,acao,"
				+ "vara,situacao,adversario,comunicado,data_cadastro) VALUES(?,?,?,?,?,?,?,?);";
		try {
			ps = con.prepareStatement(sqlInsert);

			ps.setString(1, processo.getN_processo());
			ps.setInt(2, processo.getCod_cliente());
			ps.setString(3, processo.getAcao());
			ps.setString(4, processo.getVara());
			ps.setString(5, processo.getSituacao());
			ps.setString(6, processo.getAdversario());
			ps.setString(7, processo.getComunicado());
			ps.setString(8, processo.getDada_cadastro());

			ps.executeUpdate();
			ps.close();
		} finally {

			conexao.desconecta();

		}

	}

	
	public void atualizar(Processo processo) {
		// TODO implementar atualizar

	}

	
	public Processo getProcesso(Integer n_processo) {
		// TODO implementar getProcesso
		return null;
	}

	
	public List<Processo> getProcessos() throws SQLException {
		List<Processo> arrayDeProcessos = new ArrayList<Processo>();
		Connection con =conexao.conecta();
		PreparedStatement ps;
		String sqlSelect = "SELECT * FROM processo;  ";
		ResultSet rs;
		
		ps = con.prepareStatement(sqlSelect);
		rs = ps.executeQuery();
		
		while(rs.next()){
			Processo processo = new Processo();
			
			processo.setN_processo(rs.getString("n_processo"));
			processo.setCod_cliente(rs.getInt("cod_cliente"));
			processo.setAcao(rs.getString("acao"));
			processo.setVara(rs.getString("vara"));
			processo.setSituacao(rs.getString("situacao"));
			processo.setAdversario(rs.getString("adversario"));
			processo.setComunicado(rs.getString("comunicado"));
			processo.setData_cadastro(rs.getString("data_cadastro"));
			arrayDeProcessos.add(processo);
			
		}
		
		conexao.desconecta();
		
		return arrayDeProcessos;
	}

}

